Χαίρετε.
Κάνω τα πρώτα βήματα στο Visual κομμάτι της C++ και έχω μια απορία. Έχω φτιάξει ένα πρόγραμμα και όταν είτε κάνω compile είτε Run είτε τρέχω το exe αρχείο, εμφανίζεται ημαύρη οθόνη του command prompt (σαν το πρόγραμμα να είναι σε κονσόλα). Όπως είναι ευνόητο θέλω να αφαιρέσω να μην εμφανίζεται to console (μιας και δεν έχει χρησιμότητα) αλλά δεν ξέρω πως. Παραθέτω τον κώδικα του cpp από το οποίο ξεκινά το project.
#include <iostream>
#include <stdio.h>
#include "frmstartup.h"
#include "frm_login.h"
using namespace ideal;
using namespace System::Data;
using namespace System::IO;
using namespace System::Text;
using namespace System::Windows::Forms;
int main()
{
char id;
int office_id,dummy;
String ^location;
FileStream ^fs=gcnew FileStream("idealhouse.dat",FileMode::Open);
id=(char)fs->ReadByte();
fs->Close();
switch (id)
{
case '0':
{
FILE *fp;
fp=fopen("idealhouse.dat","r");
fscanf(fp,"%d\n%d",&dummy,&office_id);
fclose(fp);
try{
SqlConnection ^connection=gcnew SqlConnection("...");
connection->Open();
SqlCommand ^command=gcnew SqlCommand();
command->Connection=connection;
command->CommandType=CommandType::Text;
command->CommandText=String::Format("select city from office where id_office = {0}",office_id);
SqlDataReader ^readdata=command->ExecuteReader();
if (readdata->Read())
location=readdata["city"]->ToString();
connection->Close();
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
Application::Run(gcnew frmstartup(location,office_id));
break;
}
catch (SqlException ^ex)
{
MessageBox::Show("Παρουσιάστηκε σφάλμα σύνδεσης","Σφάλμα",MessageBoxButtons::OK,MessageBoxIcon::Error);
}
}
case '1':
{
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
Application::Run(gcnew frm_login());
break;
}
}
}
Nα διευκρινίσω ότι το πρόγραμμα δουλεύει στην αρχή ως εξής:Τσεκάρει ένα περιεχόμενο ενός αρχείου και αναλόγως είτε φορτώνει τη φόρμα του login, είτε προχωρά στην κανονική. Μην με κράξετε για την χρήση της fopen (εκνευρίστηκα μέχρι να καταφέρω να δουλέψω με τον αντίστοιχο αντικειμενοστρεφή τρόπο).